﻿using System;
using System.Drawing;
using System.Text;
//using Microsoft.DirectX.DirectInput;



#pragma warning disable 1591

namespace ArcEngine.Input
{


	/// <summary>
	/// Manages all joystick
	/// http://www.codeproject.com/KB/directx/joystick.aspx via DirectX & c#
	/// 
	/// http://msdn.microsoft.com/fr-fr/library/bb727297.aspx
	/// 
	/// </summary>
	public static class Joysticks
	{
		/// <summary>
		/// Creates a joystick object to read information about a joystick.
		/// </summary>
		/// <param name="id"></param>
		/// <returns></returns>
		public static Joystick GetJoystick(int id)
		{
			Joystick joy = new Joystick(id);

			
			return joy;
		}


		/// <summary>
		/// Returns the number of joysticks on this system 
		/// </summary>
		static public int NumberOfJoysticks
		{
			get
			{
				//return Sdl.Input.Joysticks.NumberOfJoysticks;
				return 0;
			}
		}
	}



	/// <summary>
	/// Manage a single joystick
	/// </summary>
	public class Joystick
	{
		/// <summary>
		/// 
		/// </summary>
		/// <param name="id"></param>
		public Joystick(int id)
		{

			//if (!Sdl.Input.Joysticks.IsValidJoystickNumber(id))
			//    throw new System.IndexOutOfRangeException();

			//Handle = Sdl.Input.Joysticks.OpenJoystick(id);
		}


		/// <summary>
		/// Name of the joystick
		/// </summary>
		public string Name
		{
			get
			{
				return null;
			}
		}


		/// <summary>
		/// Joystick index
		/// </summary>
		public int Index
		{
			get
			{
				return -1;
			}
		}


		/// <summary>
		/// Returns the number of buttons
		/// </summary>
		public int NumberOfButtons
		{
			get
			{
				return 0;
			}
		}


		/// <summary>
		/// Handle of the joystick
		/// </summary>
		//private Sdl.Input.Joystick Handle;

	}


}
